#4.程序的输入输出
#输出
#通过format函数格式化输出
# 需求：小明今年18岁了，他的身高是1.80米
name = "小明"
age = 18
height = 1.80
# 通过format函数输出
print("{}今年{}岁了，他的身高是{}米".format(name,age,height))
print("{0}今年{1}岁了，他的身高是{2}米".format(name,age,height))
# {}在字符串中相当于占位符号，如果是多个变量，可以在{}中写数字




#f-格式化输出
# 需求：小明今年18岁了，他的身高是1.80米
name = "小明"
age = 18
height = 1.80
# 通过f格式化输出
print(f"{name}今年{age}岁了，他的身高是{height}米")
# 小明明年就19岁了
print(f"{name}明年就{age+1}岁了")





# 输入小明同学的年龄
name = "小明"
# age = int(input("请输入年龄："))# 输入任意数据都会当做字符串处理 "23"
# 打印一句话：小明同学年龄是23
print(f"{name}同学的年龄是{age}")
# 输出小明同学明年的年龄
print(f"{name}同学明年的年龄为：{age+1}")
# 问题：将上述题目的姓名也通过input函数输入，请问如何实现？
# name = str(input("请输入同学的姓名："))



# 运算符
# 5.1算数运算符
# >计算机进行算数运算符的特定符号
num1 = 10
num2 = 20
# 常规计算
print(f"求和结果：{num1 + num2}") # 30
print(f"求差结果：{num1 - num2}")
print(f"求乘结果：{num1 * num2}")
print(f"求除结果：{num1 / num2}")
print(f"求商结果：{num1 // num2}")
print(f"求余结果：{num1 % num2}")

# 特殊场景
# 求余数常常运用奇偶数判断
print(3 % 2 == 0)
# 幂运算：10的3次方
print(10 ** 3)
# 特殊的求和: 字符串和字符串求和 ‐‐ > 字符串拼接
print("10" + "20")
# 特殊的乘法：字符串和数字相乘 ‐‐ > 字符串重复多少次
print("10" * 3)


# 5.2 比较运算符
num1 = 10
num2 = 20
print(f"{num1 == num2}") #False
print(f"{num1 != num2}") #True
print(f"{num1 > num2}") #False
print(f"{num1 < num2}") #True
print(f"{num1 >= num2}") #False
print(f"{num1 <= num2}") #True




# 5.3 赋值运算符
# 定义两个数字
num1 = 10
num2 = 20
# 赋值运算并查看结果
num1 += num2#相当于num1 = num1 + num2
print("num1=",num1)#此时num1=30
num1 -= num2#相当于num1 = num1 - num2
print("num1=",num1)#此时num1=10
num1 *= num2
print("num1 =", num1) # 此时：num1 = 200
num1 /= num2 # 相当于 num1 = num1 / num2
print("num1 =", num1) # 此时：num1 = 10.0
num1 %= num2 # 相当于 num1 = num1 % num2
print("num1 =", num1) # 此时：num1 = 10



# 5.4 综合案例
"""
需求：
提示用户输入用户姓名，并保存到变量中
提示用户输入用户年龄，保存到变量中，并转换成整数
提示用户输入用户身高，保存到变量中，并转换成浮点数
在控制台输出用户姓名、年龄、身高对应变量的数据类型
按照以下格式输出用户信息：“姓名:xxx 年龄:xxx 身高:xxx”
在控制台输出该用户5年之后的年龄，格式：“张三 5 年之后的年龄是 25”
在控制台输出该用户现在是否成年，格式：“张三是否成年：True”
"""
# 1.输入用户姓名、年龄、身高
# 注释：接收用户输入的姓名，input 返回值为字符串类型
name = input("请输入姓名：")
# 注释：接收用户输入的年龄，并通过 int () 转换为整数类型
age = int(input("请输入年龄："))
# 注释：接收用户输入的身高，并通过 float () 转换为浮点类型
height = float(input("请输入身高："))
# 2. 输出变量的数据类型
# 注释：输出姓名变量的数据类型，type () 用于获取变量类型
print("姓名类型：",type(name))
# 注释：输出年龄变量的数据类型
print("年龄类型：",type(age))
# 注释：输出身高变量的数据类型
print("身高类型：",type(height))
# 3.直接输出用户信息
# 注释：按照指定格式输出用户信息，使用 f-string 格式化字符串
print(f"姓名：{name}，年龄：{age}，身高：{height}")
# 输出5年后的年龄
# 注释：计算并输出 5 年后的年龄，通过算术运算 age+5 实现
print(f"{name}5年之后的年龄是：{age+5}")
# 4.输出是否成年：年龄和18岁进行比较 ‐‐‐> 结果是布尔值
# 注释：判断并输出是否成年，通过比较运算 age >= 18 得到布尔值（True/False）
print(f"{name}是否成年：{age >= 18}")